<?php

use Doctrine\ORM\Mapping\ClassMetadataInfo;

$metadata->setInheritanceType(ClassMetadataInfo::INHERITANCE_TYPE_NONE);
$metadata->setPrimaryTable(array(
   'name' => 'test',
   'indexes' => 
   array(
   'I_int_1' => 
   array(
    'columns' => 
    array(
    0 => 'int_1',
    ),
   ),
   'I_int_3' => 
   array(
    'columns' => 
    array(
    0 => 'int_3',
    1 => 'int_4',
    2 => 'int_5',
    ),
   ),
   'I_int_4' => 
   array(
    'columns' => 
    array(
    0 => 'int_6',
    ),
   ),
   ),
   'uniqueConstraints' => 
   array(
   'I_int_2' => 
   array(
    'columns' => 
    array(
    0 => 'int_2',
    ),
   ),
   ),
  ));
$metadata->setChangeTrackingPolicy(ClassMetadataInfo::CHANGETRACKING_DEFERRED_IMPLICIT);
$metadata->mapField(array(
   'fieldName' => 'int5',
   'columnName' => 'int_5',
   'type' => 'bigint',
   'nullable' => false,
   'options' => 
   array(
   'unsigned' => false,
   'comment' => 'bigint',
   ),
   'id' => true,
  ));
$metadata->mapField(array(
   'fieldName' => 'id',
   'columnName' => 'id',
   'type' => 'integer',
   'nullable' => false,
   'options' => 
   array(
   'unsigned' => false,
   ),
  ));
$metadata->mapField(array(
   'fieldName' => 'int1',
   'columnName' => 'int_1',
   'type' => 'integer',
   'nullable' => false,
   'options' => 
   array(
   'unsigned' => false,
   'comment' => 'int',
   ),
  ));
$metadata->mapField(array(
   'fieldName' => 'int2',
   'columnName' => 'int_2',
   'type' => 'smallint',
   'nullable' => true,
   'options' => 
   array(
   'unsigned' => false,
   'comment' => 'smallint',
   ),
  ));
$metadata->mapField(array(
   'fieldName' => 'int3',
   'columnName' => 'int_3',
   'type' => 'boolean',
   'nullable' => true,
   'options' => 
   array(
   'comment' => 'tinyint',
   ),
  ));
$metadata->mapField(array(
   'fieldName' => 'int4',
   'columnName' => 'int_4',
   'type' => 'integer',
   'nullable' => true,
   'options' => 
   array(
   'unsigned' => false,
   'comment' => 'mediumint',
   ),
  ));
$metadata->mapField(array(
   'fieldName' => 'int6',
   'columnName' => 'int_6',
   'type' => 'float',
   'nullable' => true,
   'precision' => 10,
   'scale' => 0,
   'options' => 
   array(
   'comment' => 'float',
   ),
  ));
$metadata->mapField(array(
   'fieldName' => 'int7',
   'columnName' => 'int_7',
   'type' => 'float',
   'nullable' => true,
   'precision' => 10,
   'scale' => 0,
   'options' => 
   array(
   'comment' => 'double',
   ),
  ));
$metadata->mapField(array(
   'fieldName' => 'int8',
   'columnName' => 'int_8',
   'type' => 'decimal',
   'nullable' => true,
   'precision' => 10,
   'scale' => 0,
   'options' => 
   array(
   'comment' => 'decimal',
   ),
  ));
$metadata->mapField(array(
   'fieldName' => 'date1',
   'columnName' => 'date_1',
   'type' => 'date',
   'nullable' => true,
   'options' => 
   array(
   'comment' => 'date',
   'default' => 'curdate()',
   ),
  ));
$metadata->mapField(array(
   'fieldName' => 'date2',
   'columnName' => 'date_2',
   'type' => 'time',
   'nullable' => true,
   'options' => 
   array(
   'comment' => 'time',
   'default' => 'curtime()',
   ),
  ));
$metadata->mapField(array(
   'fieldName' => 'date3',
   'columnName' => 'date_3',
   'type' => 'datetime',
   'nullable' => true,
   'options' => 
   array(
   'comment' => 'datetime',
   ),
  ));
$metadata->mapField(array(
   'fieldName' => 'date4',
   'columnName' => 'date_4',
   'type' => 'datetime',
   'nullable' => true,
   'options' => 
   array(
   'comment' => 'timestamp',
   'default' => 'now()',
   ),
  ));
$metadata->mapField(array(
   'fieldName' => 'date5',
   'columnName' => 'date_5',
   'type' => 'date',
   'nullable' => true,
   'options' => 
   array(
   'comment' => 'year',
   ),
  ));
$metadata->mapField(array(
   'fieldName' => 'str1',
   'columnName' => 'str_1',
   'type' => 'string',
   'nullable' => true,
   'length' => 1,
   'options' => 
   array(
   'fixed' => true,
   'comment' => 'char',
   ),
  ));
$metadata->mapField(array(
   'fieldName' => 'str2',
   'columnName' => 'str_2',
   'type' => 'string',
   'nullable' => true,
   'length' => 255,
   'options' => 
   array(
   'fixed' => false,
   'comment' => 'varchar(255)',
   ),
  ));
$metadata->mapField(array(
   'fieldName' => 'str3',
   'columnName' => 'str_3',
   'type' => 'binary',
   'nullable' => true,
   'options' => 
   array(
   'comment' => 'binary',
   ),
  ));
$metadata->mapField(array(
   'fieldName' => 'str4',
   'columnName' => 'str_4',
   'type' => 'binary',
   'nullable' => true,
   'options' => 
   array(
   'comment' => 'varbinary(1)',
   ),
  ));
$metadata->mapField(array(
   'fieldName' => 'str5',
   'columnName' => 'str_5',
   'type' => 'blob',
   'nullable' => true,
   'length' => 65535,
   'options' => 
   array(
   'fixed' => false,
   'comment' => 'blob',
   ),
  ));
$metadata->mapField(array(
   'fieldName' => 'str6',
   'columnName' => 'str_6',
   'type' => 'text',
   'nullable' => true,
   'length' => 65535,
   'options' => 
   array(
   'fixed' => false,
   'comment' => 'text',
   ),
  ));
$metadata->mapField(array(
   'fieldName' => 'str8',
   'columnName' => 'str_8',
   'type' => 'simple_array',
   'nullable' => true,
   'length' => 0,
   'options' => 
   array(
   'fixed' => false,
   'comment' => 'set',
   ),
  ));
$metadata->mapField(array(
   'fieldName' => 'json1',
   'columnName' => 'json_1',
   'type' => 'json',
   'nullable' => true,
   'options' => 
   array(
   'comment' => 'json',
   ),
  ));
$metadata->mapField(array(
   'fieldName' => 'bool1',
   'columnName' => 'bool_1',
   'type' => 'boolean',
   'nullable' => true,
   'options' => 
   array(
   'comment' => 'bool',
   ),
  ));
$metadata->setIdGeneratorType(ClassMetadataInfo::GENERATOR_TYPE_IDENTITY);